Apparatus and methods for diagnosing motor-resolver system faults

ABSTRACT

Apparatus and methods are provided for diagnosing faults in multiple, associated motor-resolver systems. One apparatus includes a swapping circuit coupling a first resolver to a first or second decoder, and a swapping circuit coupling a second resolver to the first or second decoder. One method includes applying a signal from a resolver to a first decoder to determine that the first decoder is malfunctioning if the first decoder continues to generate a fault signal, and applying a signal from a different resolver to a second decoder to determine that a motor associated with the first decoder is malfunctioning if the second decoder generates a fault signal. Another method includes transmitting a signal from a resolver to first and second decoders, transmitting a signal from a different resolver to the first and second decoders, and determining if the first decoder, second decoder, a first motor, or a second motor is malfunctioning.

FIELD OF THE INVENTION

The present invention generally relates to motor-resolver systems, andmore particularly relates to apparatus and methods for diagnosing faultsin multiple, associated motor-resolver systems.

BACKGROUND OF THE INVENTION

Motor-resolver systems are typically employed to accurately sense andcontrol the position of rotating shafts. As a motor is employed to aresolver at a particular rate or rotational velocity, the output of theresolver is then fed to a motor controller to determine if the motor isproperly driving the shafts. When a resolver anomaly is detected, themotor controller notifies the user with an error message (e.g., a visualwarning, an audio warning, etc.).

Some devices (e.g., a hybrid vehicle) include multiple motors (andmultiple resolvers) coupled to a single motor controller. In thesedevices, the motor controller often includes a resolver decoder for eachrespective resolver. For example, a hybrid vehicle includes a firstmotor for operation with the electric portion of the vehicle, and asecond motor for operation with the combustion portion of the vehicle.The resolver associated with the first motor is coupled to a firstresolver decoder, and the resolver associated with the second motor iscoupled to a second resolver decoder within the common motor controller.

There are times, however, when one of the resolvers is malfunctioningand the motor controller transmits a warning to the user indicating thatthe motor coupled to the malfunctioning resolver is not working properlywhen in fact, it is the resolver decoder that is not working properly.Thus, it is often difficult to determine which of the resolver or theresolver decoder is malfunctioning when the motor controller transmitsan error message.

Since replacing a motor (and resolver) or a motor controller areexpensive, it is desirable to provide efficient systems and methods fortesting a motor (via its resolver) and a resolver decoder coupled to theresolver to determine which of the motor/resolver and the motorcontroller is malfunctioning when the motor controller transmits anerror message without replacing the motor or motor controller of avehicle system (e.g., a hybrid vehicle system). Furthermore, otherdesirable features and characteristics of the present invention willbecome apparent from the subsequent detailed description of theinvention and the appended claims, taken in conjunction with theaccompanying drawings and this background of the invention.

BRIEF SUMMARY OF THE INVENTION

Various exemplary embodiments of the invention provide apparatus andmethods for diagnosing faults in multiple, associated motor-resolversystems. For multiple, associated motor-resolver systems including afirst resolver, a second resolver, and a motor controller including afirst decoder and a second decoder, one system includes a first swappingcircuit selectively coupling the first resolver to the first decoder orthe second decoder, and a second swapping circuit selectively couplingthe second resolver to the first decoder or the second decoder.

For multiple, associated motor-resolver systems including (i) a firstmotor resolver that transmits a first resolver signal to a first decoderand (ii) a second motor resolver that transmits a second resolver signalto a second decoder, wherein the first and second decoders are eachconfigured to detect fault conditions represented in the first andsecond resolver signals, respectively, and configured to generate afirst and second fault signal, respectively, in response to detecting afault condition, and wherein the first fault signal has been generated,one method for diagnosing faults includes the step of applying thesecond signal to the first decoder to determine that the first decoderis malfunctioning if the first decoder continues to generate the firstfault signal. This method also includes the step of applying the firstsignal to the second decoder to determine that the first motor ismalfunctioning if the second decoder generates the second fault signal.

One method for diagnosing faults in multiple, associated motor-resolversystems including a first motor having an associated first resolver, asecond motor having a second associated resolver, and a motor controllerhaving a first decoder and a second decoder includes the steps oftransmitting a first signal from the first resolver to the first decoderand transmitting a second signal from the second resolver to the seconddecoder. This method also includes the steps of transmitting a thirdsignal from the first resolver to the second decoder and transmitting afourth signal from the second resolver to the first decoder. After thefirst, second, third, and fourth signals are transmitted, which of thefirst decoder, the second decoder, the first motor, or the second motoris malfunctioning can be determined.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention will hereinafter be described in conjunction withthe following drawing figures, wherein like numerals denote likeelements, and

FIG. 1 is a schematic diagram of a prior art system having multiple,associated motor-resolver systems;

FIG. 2 is a schematic diagram of an exemplary embodiment of a device fordiagnosing faults in the system of FIG. 1;

FIG. 3 is a schematic diagram of one exemplary embodiment of a resolversimulator included in the device of FIG. 2;

FIG. 4 is a flow diagram representing one exemplary embodiment of amethod for diagnosing faults in the system of FIG. 1;

FIG. 5 is a flow diagram representing another exemplary embodiment of amethod for diagnosing faults in the system of FIG. 1; and

FIG. 6 is a flow diagram representing yet another exemplary embodimentof a method for diagnosing faults in the system of FIG. 1.

DETAILED DESCRIPTION OF THE INVENTION

The following detailed description of the invention is merely exemplaryin nature and is not intended to limit the invention or the applicationand uses of the invention. Furthermore, there is no intention to bebound by any theory presented in the preceding background of theinvention or the following detailed description of the invention.

FIG. 1 is a schematic of a prior art system 10 including amotor-resolver system 100 and a motor-resolver system 150.Motor-resolver system 100 includes a resolver 105 coupled to a motor110. Resolver 105 is configured to transmit signals representing theoperating characteristics (e.g., motor speed, rotor angle, signalstrength, connectivity, etc.) of motor 110 to a motor controller 120.

Similarly, motor-resolver system 150 includes a resolver 155 coupled toa motor 160. Resolver 155 is also configured to transmit signalsrepresenting the operating characteristics of motor 160 to motorcontroller 120.

Motor controller 120 includes a resolver decoder 1250 for receivingsignals from resolver 105 and a resolver decoder 1275 for receivingsignals from resolver 155. Resolver decoders 1250 and 1275 are eachconfigured to monitor the operating characteristics of their respectivemotors (via resolvers 105 and 155) and transmit an error message whenmotor 110 or 160 are malfunctioning, respectively.

When malfunctioning, motor 110 and 160 may exhibit at least one ofmultiple possible fault conditions. One fault condition occurs whenmotors 110 and 160 are rotating too fast. This fault condition isreferred to as a “loss of tracking” condition. A loss of trackingcondition is detected by resolver decoders 1250 and 1275 when thefrequency of the signals transmitted from resolver 105 and/or 155 isgreater than a pre-determined threshold frequency of the signals or theresolver signal shows an exceedingly large rotational acceleration.

A “degraded signal” is another fault condition that may occur in motors110 and 160. A degraded signal condition is detected by resolverdecoders 1250 and 1275 when the peak-to-peak voltage amplitude of thesignals transmitted from resolvers 105 and 155 are greater than apre-determined threshold voltage. Since each resolver typically includestwo sine wave feedback outputs and two cosine feedback outputs, thedegraded signal may be found from either the sine or cosine feedbacksignals. Additionally, if the difference between the peak-to-peakvoltage amplitudes of the sine and cosine signals is greater than apre-determined value, the degraded signal fault may be logged by thecorresponding resolver decoder.

Another fault condition that may be experienced by motors 110 and 160 isa “loss of signal” condition. A loss of signal fault condition isdetected by resolver decoders 1250 and 1275 when the peak-to-peakvoltage amplitude of the signals transmitted from resolvers 105 and/or155 are less than a pre-determined threshold. Since each resolvertypically includes sine wave feedback outputs and cosine feedbackoutputs, the loss of signal fault conditions for each resolver may becaused by the loss of signal strength in any of the feedback outputs,the extreme case being an open circuit in one or more resolver wireconnections.

A “DC bias Out-Of-Range (OOR)” condition is another fault condition thatmay be experienced by resolvers 105 and 155. A DC bias OOR faultcondition is detected when the DC bias of the signals output by the pairof sine wave feedback outputs and/or the pair of cosine wave feedbackoutputs is either too high or too low. A short circuit condition to thepower supply or circuit ground is a typical DC bias OOR fault conditionthat may be experienced by resolvers 105 and 155.

FIG. 2 is a schematic diagram of an exemplary embodiment of a device 200for diagnosing faults in system 10. Device 200 may be inserted in, forexample, a wire harness (not shown) between resolvers 105/155 and motorcontroller 120. Device 200 includes a connector 202, a connector 204, aconnector 206, and a connector 208 to detachably couple device 200 tosystem 10. That is, connector 202 is configured to couple resolver 105to device 200, connector 204 is configured to couple resolver 155 todevice 200, connector 206 is configured to couple resolver decoder 1250to device 200, and connector 208 is configured to couple resolverdecoder 1275 to device 200.

Device 200 also includes a swapping circuit 210 coupled to a swappingcircuit 220. Swapping circuit 210 is configured to selectively switchbetween being coupled to a resolver simulator 300 (see FIG. 3) andconnector 202. Swapping circuit 220 is configured to selectively switchbetween being coupled to connector 206 and connector 208. Accordingly,resolver simulator 300 or connector 202 may be coupled to eitherconnector 206 or connector 208. Similarly, connector 206 or connector208 may be coupled to either resolver simulator 300 or connector 202.

Device 200 also includes a swapping circuit 230 coupled to a swappingcircuit 240. Swapping circuit 230 is configured to selectively switchbetween being coupled to resolver simulator 300 or connector 204.Swapping circuit 240 is configured to selectively switch between beingcoupled to connector 206 or connector 208. Accordingly, resolversimulator 300 or connector 204 may be coupled to either connector 206 orconnector 208. Similarly, connector 206 or connector 208 may be coupledto either resolver simulator 300 or connector 204.

A controller 250 coupled to swapping circuits 210, 220, 230, and 240 isalso included in device 200. Controller 250 is also coupled to aconnector 255 configured to detachably couple device 200 to motorcontroller 120.

Controller 250 is configured to operate in a plurality of modes (e.g., arun/crank mode, an accessory mode, etc.) to test (discussed below) motor110 (via resolver 105), motor 160 (via resolver 155), resolver decoder1250, and/or resolver decoder 1275. The accessory mode enables device200 to “swap” between the various components of device 200. That is,controller 250 is configured to transmit a signal to swapping circuit210, 220, 230, and/or 240 instructing one or more of these swappingcircuits to switch from being coupled to one component, to being coupledto another component. For example, controller 250 may transmit a signalto swapping circuit 210 (when the vehicle key is in the accessoryposition, but not in the run/crank position) instructing swappingcircuit 220 to switch from being coupled to connector 206 (i.e.,resolver decoder 1250) to being coupled to connector 208 (i.e., resolverdecoder 1275). Controller 250 may, at substantially the same time,instruct swapping circuit 230 to switch from being coupled to connector204 (i.e., resolver 155) to being coupled to resolver simulator 300. Asone skilled in the art will appreciate, controller 250 is able totransmit signals to swapping circuit 210, 220, 230, and/or 240 to enableany combination of resolver simulator 300, resolver 105, or resolver 155to be coupled to resolver decoder 1250 or resolver decoder 1275 whenoperating in accessory mode.

In addition, controller 250 is configured to couple resolver simulator300 to resolver decoder 1250 (via swapping circuits 210 and 220) andresolver decoder 1275 (via swapping circuits 230 and 240) at the sametime. Here, resolver simulator 300 is capable of simulating bothresolver 105 and resolver 155 to test resolver decoders 1250 and 1275 atthe same time. That is, controller 250 may couple resolver 105 andresolver 155 to a respective one of resolver decoders 1250 and 1275, andthen switch the coupling (via swapping circuits 220 and 240) of resolver105 and resolver 155 to the other one of resolver decoders 1250 and1275.

FIG. 3 is a schematic diagram of one exemplary embodiment of resolversimulator 300 (see FIG. 2). Resolver simulator 300 includes anadjustable waveform generator 310 configured to generate waveforms(e.g., square waves) representing an output of a motor (e.g., motor 110or 160). Moreover, the frequency of the signals generated by waveformgenerator 310 may be adjusted to simulate a “loss of tracking” faultcondition of a motor (i.e., the motor is rotating too fast) or normalspeeds of a motor. The output of waveform generator 310 is coupled to asine wave circuit 320 and to a cosine wave circuit 330.

Sine wave circuit 320 is configured to simulate a pair of sine wavefeedback outputs of resolvers 105 and 155. To accomplish this, sine wavecircuit 320 includes a low pass filter 3205 having an output coupled toa gain adjustment circuit 3310. Low pass filter 3205 and gain adjustmentcircuit 3310 operate to transform the square waves generated by waveformgenerator 310 into sine waves.

Also included in sine wave circuit 320 is a switch 3215 (e.g., a singlepole, double throw (SPDT) switch) to selectively couple gain adjustmentcircuit 3210 or a reference voltage 340 (discussed below) to an input ofsignal multipilier 3225. The output of signal multiplier circuit 3225 iscoupled to an adder 3230, and adder 3230 is coupled to an adjustable DCoffset circuit 3235. DC offset circuit 3235 is configured to adjustably(either automatically and/or manually via, for example, a potentiometer3237) increase or decrease the DC bias of the sine waves generated bysine wave circuit 320 to simulate a short circuit condition or anon-short circuit condition.

The output of adder 3230 is coupled to a buffer 3248 and to a phaseshift circuit 3254. Buffer 3248 is configured to the amplify signalsreceived from adder 3230, and the output of buffer 3248 is coupled to anoutput 3240 of sine wave circuit 320.

Phase shift circuit 3254 is configured to shift the phase of the signalsreceived from adder 3230 by 180°, and the output of phase shift circuit3254 is coupled to another output 3250 of sine wave circuit 320.

Cosine wave circuit 330 is configured to simulate a pair of cosine wavefeedback outputs of resolvers 105 and 155. Cosine wave circuit 330includes an output of a low pass filter 3305 coupled to a phase shiftcircuit 3307. The output of phase shift circuit 3307 is coupled to again adjustment circuit 3310. Low pass filter 3305, phase shift circuit3307, and gain adjustment circuit 3310 operate to transform the squarewaves generated by waveform generator 310 into sine waves (via low passfilter 3305) and then into cosine waves (via phase shift circuit 3307).

Also included in cosine wave circuit 330 is a switch 3315 (e.g., asingle pole, double throw (SPDT) switch) to selectively couple theoutput of gain adjustment circuit 3310 or a reference voltage 340(discussed below) to a an input of a signal multiplier 3325.

The output of signal multiplier circuit 3325 is coupled to an adder3330, and adder 3330 is also coupled to an adjustable DC offset circuit3335. DC offset circuit 3335 is configured to adjustably (eitherautomatically and/or manually via, for example, a potentiometer 3337)increase or decrease the DC bias of the cosine waves generated by cosinewave circuit 330 to simulate a short circuit condition or a non-shortcircuit condition.

The output of adder 3330 is coupled to a buffer 3348 and coupled to aphase shift circuit 3354. Buffer 3348 is configured to the amplifysignals received from adder 3330, and the output of buffer 3348 iscoupled to an output 3340 of cosine wave circuit 330.

Phase shift circuit 3354 is configured to shift the phase of the signalsreceived from adder 3330 by 180°, and the output of phase shift circuit3354 is coupled to another output 3350 of cosine wave circuit 330.

As discussed above, resolver simulator 300 includes a reference voltage340 selectively coupled to signal multiplier circuit 3225 and signalmultiplier circuit 3325 via switches 3215 and 3315, respectively.Reference voltage 340 operates to simulate a motor at rest (i.e.,rotating at zero RPMs). Because of reference voltage 340 and waveformgenerator 310, resolver simulator 300 is capable of simulating motorspeeds from zero RPMs to speeds greater than, for example, 13,000 RPMs.This enables resolver simulator 300 to simulate the range of speeds ofmotor-resolver systems 100 and 150 (see FIG. 1).

Resolver simulator 300 also includes a gain circuit 350 coupled tosignal multiplier circuit 3225 and coupled to signal multiplier circuit3325. Gain circuit 350 is configured to adjust (automatically and/ormanually) the voltage amplitudes of the sine waves produced by sine wavecircuit 320 and the cosine waves produced by cosine wave circuit 330.That is, gain circuit 350 is capable of adjusting the peak-to-peakvoltage amplitudes of the sine waves and/or the cosine waves to simulatedegraded signal fault conditions and/or loss of signal fault conditionsdepending upon whether the peak-to-peak amplitudes are greater than amaximum threshold voltage amplitude or less than a minimum thresholdvoltage amplitude. Moreover, gain circuit 350 is capable of manipulatingthe peak-to-peak voltage amplitudes of the sine waves and/or the cosinewaves to simulate a “properly functioning” signal.

To accomplish such, gain circuit 350 includes a buffer 3510 coupled tosignal multiplier circuits 3225 and 3325 discussed above. Gain circuit350 also includes buffer 3510 coupled to a differential amplifier 3520.Moreover, differential amplifier 3520 includes a positive excitationinput 3524 and a negative excitation input 3528 of resolver decoders 105and 155 (see FIG. 1).

Resolver simulator 300 also includes a resolver decoder 360 forself-calibrating resolver simulator 300 prior to testing a motorcontroller (e.g., motor controller 120). Resolver decoder 360 isconfigured to be substantially similar to resolver decoders 1250 and1275 (see FIG. 1). To self-calibrate resolver simulator 300, waveformgenerator 310, DC offset circuit 3235, DC offset circuit 3335, and gaincircuit 350 are each adjusted so that resolver simulator 300 does notproduce one or more fault conditions. That is, resolver simulator 300outputs signals from sine wave circuit 320 and cosine wave circuit 330to resolver decoder 360 representing a correctly functioning motor.Because resolver decoder 360 is substantially similar to resolverdecoders 1250 and 1275, resolver simulator 300 is also calibrated formotor controller 120.

As illustrated in FIG. 3, sine wave output 3240 is selectively coupledto the input of resolver decoder 360 or one resolver decoder (e.g.,resolver decoders 1250 and 1275) of motor controller 120 via a switch365 (e.g., an SPDT switch). Similarly, sine wave output 3250 isselectively coupled to the input of resolver decoder 360 or to oneresolver decoder of motor controller 120 via a switch 370 (e.g., an SPDTswitch).

Cosine wave output 3340 is selectively coupled to the input of resolverdecoder 360 or to one resolver decoder of motor controller 120 via aswitch 375 (e.g., an SPDT switch). Furthermore, cosine wave output 3350is selectively coupled to the input of resolver decoder 360 or to oneresolver decoder of motor controller 120 via a switch 380 (e.g., an SPDTswitch). That is, sine wave output 3240, sine wave output 3250, cosinewave output 3340, and cosine wave output 3350 are coupled to the inputof resolver decoder 360 when resolver simulator 300 is beingself-calibrated, and coupled to either resolver decoder 1250 or 1275when resolver simulator 300 is testing resolver decoder 1250 or 1275,respectively.

In addition, positive excitation input 3524 is selectively coupled tothe output of resolver decoder 360 or the output of one resolver decoderof motor controller 120 via a switch 385 (e.g., an SPDT switch).Negative excitation input 3528 is selectively coupled to the output ofresolver decoder 360 or the output of one resolver decoder of motorcontroller 120 via a switch 390 (e.g., an SPDT switch). That is,positive excitation input 3524 and negative excitation input 3528 arecoupled to the output of resolver decoder 360 when resolver simulator300 is being self-calibrated, and coupled to the output of eitherresolver decoder 1250 or 1275 when resolver simulator 300 is testingresolver decoder 1250 or 1275, respectively.

During an exemplary operational mode, various inputs to resolversimulator 300 may be manually and/or automatically adjusted to simulateone or more of the fault conditions discussed above or a properlyoperating condition to determine if the motor controller (e.g., motorcontroller 120) is functioning properly. For example, the frequency ofsignals produced by waveform generator 310 may be increased so that theoutputs of sine wave output 3240, sine wave output 3250, cosine waveoutput 3340, and/or cosine wave output 3350 simulate a loss of trackingfault condition. In another example, the DC bias of the outputs of sinewave output 3240 and sine wave output 3250, and/or cosine wave output3340 and cosine wave output 3350 may be adjusted to be too high or toolow to simulate a short circuit fault condition. Furthermore, thevoltage gain produced by gain circuit 350 may be increased or decreasedso that the peak-to-peak voltage amplitude of the outputs of sine waveoutput 3240, sine wave output 3250, cosine wave output 3340, and/orcosine wave output 3350 are less than or greater than a pre-determinedthreshold to simulate a loss of signal or degraded signal faultcondition, respectively. In addition, the outputs may include afrequency, DC bias, and peak-to-peak voltage simulating a properlyfunctioning motor-resolver system. Accordingly, resolver simulator 300is capable of simulating the multiple fault conditions discussed abovewith reference to motor-resolver systems 100 and 150, as well as aproperly functioning motor-resolver system.

FIG. 4 is a flow diagram representing one exemplary embodiment of amethod 400 for testing system 10. After system 10 is coupled to device200 (e.g., resolver 105 is coupled to connector 202, resolver 155 iscoupled to connector 204, resolver decoder 1250 is coupled to connector206, and resolver decoder 1275 is coupled to connector 208), resolver105 is coupled to resolver decoder 1250 via, for example, swappingcircuits 210 and 220. A signal from resolver 105 is transmitted toresolver decoder 1250 (step 405) to determine if motor controller 120transmits an error message in response to the signal from resolver 105(step 410).

Resolver 155 is coupled to resolver decoder 1275 via, for example,swapping circuits 230 and 240. A signal from resolver 155 is transmittedto resolver decoder 1275 (step 415) to determine if motor controller 120transmits an error message in response to the signal from resolver 155(step 420).

Resolver 105 is also coupled to resolver decoder 1275 via, for example,swapping circuits 210 and 220. A signal from resolver 105 is transmittedto resolver decoder 1275 (step 425) to determine if motor controller 120transmits an error message in response to the signal from resolver 105(step 430). Similarly, resolver 155 is also coupled to resolver decoder1250 via, for example, swapping circuits 230 and 240. A signal fromresolver 155 is transmitted to resolver decoder 1250 (step 435) todetermine if motor controller 120 transmits an error message in responseto the signal from resolver 155 (step 440).

Once steps 405 through 440 have been performed, it can be determinedwhich of resolver 105, resolver 155, resolver decoder 1250, resolverdecoder 1275, and/or an input/output (I/O) or software of motorcontroller 120 is malfunctioning (step 445). Resolver 105 and/or 155 ismalfunctioning if motor controller 120 transmits an error message that“jumps” from one decoder to the other decoder when motor controller 120receives signals from resolver 105 or 155, respectively. For example, ifmotor controller 120 transmits an error message when resolver decoder1250 is receiving signals from resolver 105 (via swapping circuits 210and 220), and also transmits an error message when resolver decoder 1275is receiving signals from resolver 105 (after swapping circuit 220connects to resolver decoder 1275), resolver 105 is malfunctioning. Inanother example, if motor controller 120 transmits an error message whenresolver decoder 1275 is receiving signals from resolver 155 (viaswapping circuits 230 and 240), and also transmits an error message whenresolver decoder 1250 is receiving signals from resolver 155 (afterswapping circuit 240 connects to resolver decoder 1275), resolver 155 ismalfunctioning.

Resolver decoder 1250 or 1275 (or an I/O or software of motor controller120) is malfunctioning if motor controller 120 transmits an errormessage that fails to “jump” from one resolver decoder to the otherresolver decoder when resolver decoders 1250 and 1275 receive signalsfrom resolvers 105 and 155, respectively. For example, if motorcontroller 120 transmits an error message when resolver decoder 1250 isreceiving signals from resolver 105 (via swapping circuits 210 and 220),and continues to transmit an error message when resolver decoder 1250 isreceiving signals from resolver 155 (via swapping circuits 230 and 240),resolver decoder 1250 is malfunctioning. Likewise, if motor controller120 transmits an error message when resolver decoder 1275 is receivingsignals from resolver 105 (via swapping circuits 210 and 220), andcontinues to transmit an error message when resolver decoder 1275 isreceiving signals from resolver 155 (via swapping circuits 230 and 240),resolver decoder 1275 is malfunctioning. If resolver 105, resolver 155,resolver decoder 1250, and resolver decoder 1275 are each functioningproperly, but motor controller 120 continues to transmit an errorsignal, an I/O or the software of motor controller 120 ismalfunctioning.

When resolver decoder 1250 or 1275 is malfunctioning, the type ofmalfunction resolver decoder 1250 or 1275 is experiencing can bedetermined (step 450). That is, resolver simulator 300 (and swappingcircuits 210 and 230, as controlled by controller 250) may be used toidentify which faulty condition(s) resolver decoder 1250 or 1275 isexperiencing.

To determine if the malfunction resolver decoder 1250 or 1275 isexperiencing is associated with detection of a loss of tracking faultcondition, resolver simulator 300 (after being coupled to resolverdecoder 1250 or 1275) transmits one or more signals simulating a motorrate of speed. The speed may then be increased (either instantaneouslyor gradually) to simulate an acceleration that is too large or a rate ofspeed greater than a maximum threshold speed to determine if motorcontroller transmits an error message in response thereto. If motorcontroller 120 transmits an error message in response to the simulatedspeed being greater than the maximum threshold speed, resolver decoder1250 or 1275 is not experiencing a malfunction associated with detectinga loss of tracking fault condition. Alternatively, if motor controller120 fails to transmit an error message in response to the simulatedspeed being greater than the maximum threshold speed, resolver decoder1250 or 1275 is experiencing a malfunction associated with detecting aloss of tracking fault condition.

In determining if the malfunction resolver decoder 1250 or 1275 isexperiencing is associated with detection of a degraded signal faultcondition, resolver simulator 300 transmits one or more signalssimulating a resolver peak-to-peak voltage amplitude. The voltage of thesimulated signals may initially simulate a properly functioningresolver. The voltage may then be increased (either instantaneously orgradually) to simulate a peak-to-peak voltage greater than a maximumthreshold voltage to determine if motor controller transmits an errormessage in response to the simulated voltage being greater than themaximum threshold voltage. If motor controller 120 transmits an errormessage in response to the simulated voltage being greater than themaximum threshold voltage, resolver decoder 1250 or 1275 is notexperiencing a malfunction associated with detecting a degraded signalfault condition. Alternatively, if motor controller 120 fails totransmit an error message in response to the simulated voltage beinggreater than the maximum threshold voltage, resolver decoder 1250 or1275 is experiencing a malfunction associated with detecting a degradedsignal fault condition.

To determine if the malfunction resolver decoder 1250 or 1275 isexperiencing is associated with detection of a loss of signal faultcondition, resolver simulator 300 transmits one or more signalssimulating a resolver peak-to-peak voltage amplitude. The voltage of thesimulated signals may initially be within the range of voltagessimulating a properly functioning resolver. The voltage may then bedecreased (either instantaneously or gradually) to simulate apeak-to-peak voltage less than a minimum threshold voltage to determineif motor controller transmits an error message in response to thesimulated voltage being less than the minimum threshold voltage. Ifmotor controller 120 transmits an error message in response to thesimulated voltage being less than the minimum threshold voltage,resolver decoder 1250 or 1275 is not experiencing a malfunctionassociated with detecting a loss of signal fault condition.Alternatively, if motor controller 120 fails to transmit an errormessage in response to the simulated voltage being less than the minimumthreshold voltage, resolver decoder 1250 or 1275 is experiencing amalfunction associated with detecting a loss of signal fault condition.

In determining if the malfunction resolver decoder 1250 or 1275 isexperiencing is associated with detection of a DC bias OOR faultcondition, resolver simulator 300 transmits one or more signalssimulating a resolver DC bias. The DC bias of the simulated signals mayinitially be within a range of DC biases simulating a properlyfunctioning resolver. The DC bias may then be increased (eitherinstantaneously or gradually) and/or decreased (either instantaneouslyor gradually) to simulate a DC bias that is either greater than amaximum threshold DC bias or a DC bias that is below a minimum thresholdDC bias to determine if motor controller transmits an error message inresponse thereto. If motor controller 120 transmits an error message inresponse to the simulated DC bias being greater than the maximumthreshold DC bias and/or (depending upon whether testing one of or bothof the maximum and minimum DC bias threshold(s)) being less than theminimum threshold DC bias, resolver decoder 1250 or 1275 is notexperiencing a malfunction associated with detecting a DC bias OOR faultcondition. Alternatively, if motor controller 120 fails to transmit anerror message in response to the simulated DC bias being greater thanthe maximum threshold DC bias and/or (depending upon whether testing oneof or both of the maximum and minimum DC bias threshold(s)) being lessthan the minimum threshold DC bias, resolver decoder 1250 or 1275 isexperiencing a malfunction associated with detecting a DC bias OOR faultcondition.

After the type of malfunction is determined, the magnitude of themalfunction can be quantified (step 455). The magnitude of themalfunction may be quantified by determining a threshold motor speed(for a loss of tracking fault condition), a threshold peak-to-peakvoltage (for a loss of signal fault condition or a degraded signalcondition), or a DC bias threshold (for a DC bias OOR fault condition).

The threshold motor speed is the motor speed at which motor controller120 transmits the error message in response to signals from resolversimulator 300. To determine the threshold motor speed when a loss oftracking fault condition exists, waveform generator 310 (see FIG. 3) maybe adjusted (either gradually or instantaneously) so that resolversimulator 300 outputs signals simulating varying motor speeds untilmotor controller 120 transmits the error signal. The simulated motorspeed may be started at a speed representing a properly functioningresolver signal or a speed representing the loss of tracking faultcondition. The threshold motor speed may then be compared to the motorspeed at which motor controller 120 should transmit the error message toquantify the loss of tracking fault condition.

The threshold peak-to-peak voltage is the voltage at which at whichmotor controller 120 transmits the error message in response to signalsfrom resolver simulator 300. In determining the threshold peak-to-peakvoltage when a degraded signal fault condition exists, gain circuit 350(see FIG. 3) may be adjusted (either gradually or instantaneously) sothat resolver simulator 300 outputs signals simulating varyingpeak-to-peak voltages until motor controller 120 transmits the errorsignal. The simulated peak-to-peak voltages may be started at a voltagerepresenting a properly functioning resolver signal or a voltagerepresenting the degraded signal fault condition. The threshold voltagemay then be compared to the voltage at which motor controller 120 shouldtransmit the error message to quantify the degraded signal faultcondition. Similarly, gain circuit 350 may be adjusted (either graduallyor instantaneously) so that resolver simulator 300 outputs signalssimulating varying peak-to-peak voltages to determine the thresholdpeak-to-peak voltage when a loss of signal fault condition exists.

The threshold DC bias is the DC bias at which at which motor controller120 transmits the error message in response to signals from resolversimulator 300. In determining the threshold DC bias when a DC bias OORfault condition exists, DC offset circuit 3235 and/or DC offset circuit3335 (see FIG. 3) may be adjusted (either gradually or instantaneously)so that resolver simulator 300 outputs signals simulating varying DCbiases until motor controller 120 transmits the error signal. Thesimulated DC biases may be started at a DC bias representing a properlyfunctioning resolver signal or a DC bias representing the short circuitfault condition. The threshold DC bias may then be compared to the DCbias at which motor controller 120 should transmit the error message toquantify the short circuit fault condition.

Sometimes when a malfunction exists in system 10, which ofmotor-resolver systems 100 and 150 has the problem is known. However,whether the malfunction is on the motor side or the motor controllerside is unknown. For example, if a malfunction exists in system 10, itmay be known that the malfunction is within motor-resolver system 100,however; whether resolver 105 or resolver decoder 1250 is themalfunctioning component is unknown. In another example, if amalfunction exists in system 10, it may be known that the malfunction iswithin motor-resolver system 150, however; whether resolver 155 orresolver decoder 1275 is the malfunctioning component is unknown.

FIG. 5 is a flow diagram representing one exemplary embodiment of amethod 500 for diagnosing faults in system 10 when it is known that themalfunction is in motor-resolver system 100 or motor-resolver system150. Method 500 begins by coupling a resolver (e.g., resolver 105) to aresolver decoder (e.g., resolver decoder 1275) (step 505), and couplinganother resolver (e.g., resolver 155) to another resolver decoder (e.g.,resolver decoder 1250) (step 510). A signal is transmitted from resolver105 to resolver decoder 1275 (step 515) to determine if the motorcontroller (e.g., motor controller 120) transmits an error message (step520). A signal is also transmitted from resolver 155 to resolver decoder1250 (step 525) to determine motor controller 120 transmits an errormessage (step 530).

Once steps 505 through 525 have been performed, which motor controlleror resolver decoder is malfunctioning can be determined (step 535). Ifthe error message transmitted by motor controller 120 “jumps” from oneresolver decoder to the other resolver decoder, the motor ismalfunctioning. If the error message fails to jump from one resolverdecoder to the other resolver decoder (i.e., stays at the same resolverdecoder), the resolver decoder is malfunctioning. For example, if it isknown that motor-resolver system 100 is malfunctioning, after resolver105 transmits a signal to resolver decoder 1275 and resolver 155transmits a signal to resolver decoder 1250, if controller 120 transmitsthe error message from resolver decoder 1275, resolver 105 ismalfunctioning. If controller 120 transmits the error message fromresolver decoder 1250, resolver decoder 1250 is malfunctioning. In anexample when it is known that motor-resolver system 150 ismalfunctioning, if controller 120 transmits the error message fromresolver decoder 1250, resolver 155 is malfunctioning; but if controller120 transmits the error message from resolver decoder 1275, resolverdecoder 1275 is malfunctioning.

When resolver decoder 1250 or 1275 is malfunctioning, which of themultiple fault conditions resolver decoder 1250 or 1275 is experiencingcan be determined in a manner similar to step 450 discussed above withrespect to FIG. 4 (step 540). Furthermore, once the type of faultcondition is determined, the magnitude of the fault condition(s) can bedetermined in a manner similar to step 455 discussed above with respectto FIG. 4 (step 545).

FIG. 6 is a flow diagram representing one exemplary embodiment of amethod 600 for diagnosing faults in system 10. Method 600 begins byknowing that a motor controller (e.g., motor controller 120) indicatesthat side A (e.g., motor-resolver system 100 in FIG. 1) and side B(e.g., motor-resolver system 150 in FIG. 1) of system 10 aremalfunctioning (i.e., are “bad” ) (step 605).

Method 600 also includes connecting system 10 to device 200 and swapping(via swapping circuits 220 and 240) the coupling of sides A and B (step610). That is, for example, coupling resolver 105 to decoder resolver1275 and coupling resolver 155 to resolver decoder 1250 when resolver105 was initially coupled to resolver decoder 1250 and resolver 155 wasinitially coupled to resolver decoder 1275.

Side A is checked to determine if it is functioning properly (i.e., ifit is “good”) and side B is checked to determine if it is malfunctioningor bad (step 615). If side A is functioning properly and side B ismalfunctioning, decoder A (e.g., resolver decoder 1250) and resolver B(e.g., resolver 155) are determined to be functioning properly (i.e.,are “good”) (step 620), and decoder B (e.g., resolver decoder 1275) andresolver A (e.g., resolver 105) are determined to be malfunctioning(i.e., are “bad”) (step 625).

Side A is checked to determine if it is malfunctioning and side B ischecked to determine if it is functioning properly (step 630). If side Ais malfunctioning and side B is functioning properly, decoder B (e.g.,resolver decoder 1275) and resolver A (e.g., resolver 105) aredetermined to be functioning properly (i.e., are “good”) (step 635), anddecoder A (e.g., resolver decoder 1250) and resolver B (e.g., resolver155) are determined to be malfunctioning (i.e., are “bad”) (step 640).

If the answer to both steps 615 and 630 are NO, it is determined thatresolvers A and B, or decoders A and B are both malfunctioning (step645). In this situation, a resolver simulator (e.g., resolver simulator300) is used to check decoders A and B (step 650) to determine ifdecoders A and B are both functioning properly (step 655). If decoders Aand B are functioning properly, resolvers A and B are bothmalfunctioning (step 660); otherwise, decoders A and B are bothmalfunctioning (step 665).

While at least one exemplary embodiment has been presented in theforegoing detailed description of the invention, it should beappreciated that a vast number of variations exist and that the methodsteps described with reference to FIGS. 4 and 5 may be performed in anyorder and/or one or more steps may be omitted. It should also beappreciated that the exemplary embodiment or exemplary embodiments areonly examples, and are not intended to limit the scope, applicability,or configuration of the invention in any way. Rather, the foregoingdetailed description will provide those skilled in the art with aconvenient road map for implementing an exemplary embodiment of theinvention, it being understood that various changes may be made in thefunction and arrangement of elements described in an exemplaryembodiment without departing from the scope of the invention as setforth in the appended claims and their legal equivalents.

1. A system for diagnosing faults in multiple, associated motor-resolversystems including a first resolver, a second resolver, and a motorcontroller including a first decoder and a second decoder, the systemcomprising: a first swapping circuit selectively coupling the firstresolver to one of the first decoder and the second decoder; a secondswapping circuit selectively coupling the second resolver to one of thefirst decoder and the second decoder, wherein the first and secondswapping circuits are configured such that: when the first resolver iscoupled to the first decoder, the second resolver is coupled to thesecond decoder, and when the first resolver is coupled to the seconddecoder, the second resolver is coupled to the first decoder; and acontroller coupled to the first swapping circuit and the second swappingcircuit, the controller configured to: provide a first signal to thefirst swapping circuit to switch from being coupled to the first decoderto being coupled to the second decoder at a first time; and provide asecond signal to the second swapping circuit to switch from beingcoupled to the second decoder to being coupled to the first decoder at asecond point in time, the second time being approximately equal to thefirst time.
 2. The system of claim 1, further comprising: an adjustableresolver simulator configured to generate outputs simulating at leastone resolver fault condition of a plurality of resolver faultconditions; and a third swapping circuit selectively coupling one of theresolver simulator and the first resolver to the first swapping circuit.3. The system of claim 2, further comprising a fourth swapping circuitselectively coupling one of the resolver simulator and the secondresolver to the second swapping circuit.
 4. The system of claim 1,further comprising: an adjustable resolver simulator configured togenerate outputs simulating at least one resolver fault condition of aplurality of resolver fault conditions; and a third swapping circuitselectively coupling one of the resolver simulator and the secondresolver to the second swapping circuit.
 5. A method for diagnosingfaults in multiple, associated motor-resolver systems including (i) afirst motor resolver that transmits a first resolver signal to a firstdecoder and (ii) a second motor resolver that transmits a secondresolver signal to a second decoder, wherein the first and seconddecoders are each configured to detect fault conditions represented inthe first and second resolver signals, respectively, and configured togenerate a first and second fault signal, respectively, in response todetecting a fault condition, and wherein the first fault signal has beengenerated, the method comprising the steps of: applying the secondsignal to the first decoder to determine that the first decoder ismalfunctioning if the first decoder continues to generate the firstfault signal; and applying the first signal to the second decoder todetermine that the first motor is malfunctioning if the second decodergenerates the second fault signal.
 6. The method of claim 5, wherein thefirst decoder includes a malfunction, the method further comprising thestep of determining a type of the fault condition causing themalfunction.
 7. The method of claim 6, further comprising the step ofquantifying a threshold of the fault condition.
 8. The method of claim7, wherein the quantifying step comprises the steps of: transmitting aplurality of signals simulating varying rates of speeds to the firstdecoder; and identifying a rate of speed that causes the motorcontroller to transmit the first fault signal in response to theplurality of signals.
 9. The method of claim 7, wherein the quantifyingstep comprises the steps of: transmitting a plurality of signalssimulating varying DC biases; and identifying a DC bias that causes themotor controller to transmit the first fault signal in response to theplurality of signals.
 10. The method of claim 7, wherein the quantifyingstep comprises the steps of: transmitting a plurality of signalssimulating varying peak-to-peak voltage amplitudes greater than amaximum threshold voltage; and identifying a voltage that causes themotor controller to transmit the error message in response to theplurality of signals.
 11. The method of claim 7, wherein the quantifyingstep comprises the steps of: transmitting a plurality of signalssimulating varying peak-to-peak voltage amplitudes less than a minimumthreshold voltage; and identifying a voltage that causes the motorcontroller to transmit the error message in response to the plurality ofsignals.
 12. A method for diagnosing faults in multiple, associatedmotor-resolver systems including a first motor having an associatedfirst resolver, a second motor having an associated second resolver, anda motor controller having a first decoder and a second decoder, themethod comprising the steps of: transmitting a first signal from thefirst resolver to the first decoder; transmitting a second signal fromthe second resolver to the second decoder; transmitting a third signalfrom the first resolver to the second decoder; transmitting a fourthsignal from the second resolver to the first decoder; and determining ifone of the first decoder, the second decoder, the first motor, and thesecond motor is malfunctioning, wherein the determining step comprisesthe steps of: determining if the motor controller transmits an errormessage in response to one of the first signal and the second signal;and determining if the motor controller transmits the error message inresponse to one of the third signal and the fourth signal.
 13. Themethod of claim 12, the method further comprising the steps of:determining that the first motor is malfunctioning if the motorcontroller transmits the error message in response to both the firstsignal and the third signal; determining that the second motor ismalfunctioning if the motor controller transmits the error message inresponse to both the second signal and the fourth signal.
 14. The methodof claim 12, further comprising the steps of: determining that the firstdecoder is malfunctioning if the motor controller transmits the errormessage in response to both the first signal and the fourth signal; anddetermining that the second decoder is malfunctioning if the motorcontroller transmits the error message in response to both the secondsignal and the third signal.
 15. The method of claim 14, wherein one ofthe first decoder and the second decoder includes a malfunction, themethod further comprising the step of determining a type of faultcondition causing the malfunction from a group of fault conditionscomprised of a loss of tracking fault condition, a loss of signal faultcondition, a short circuit fault condition, and a degraded signal faultcondition.
 16. The method of claim 15, further comprising the step ofquantifying a threshold of the one of the loss of tracking faultcondition, the loss of signal fault condition, the degraded signal faultcondition, and the short circuit fault condition.
 17. The method ofclaim 16, wherein the quantifying step comprises the steps of:transmitting a plurality of signals simulating varying rates of speedsto the first decoder; and identifying a rate of speed that causes themotor controller to transmit the error message in response to theplurality of signals.
 18. The method of claim 16, wherein thequantifying step comprises the steps of: transmitting a plurality ofsignals simulating varying DC biases; and identifying a DC bias thatcauses the motor controller to transmit the error message in response tothe plurality of signals.
 19. The method of claim 16, wherein thequantifying step comprises the steps of: transmitting a plurality ofsignals simulating varying peak-to-peak voltage amplitudes one ofgreater than a maximum threshold voltage and less than a minimumthreshold voltage; and identifying a voltage that causes the motorcontroller to transmit the error message in response to the pluralitysignals.